package huawei.test01;

import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;

/**
 * 20230410晚华为机考第二题
 * <p>
 * 题目：找到相同数字间的最大距离
 * <p>
 * 一排数字，找到相同数字之间最长的间距，不存在任何一组相同数字则返回-1
 *
 * 测试案例：7 4 5 6 2 3 4 8  输出 5
 */
// 通过率100%
public class t2 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int[] nums = new int[n];
        for (int i = 0; i < n; i++) {
            nums[i] = in.nextInt();
        }
        Map<Integer, Integer> firstPos = new HashMap<>();
        int distance = -1;
        for (int i = 0; i < n; i++) {
            Integer firstPosOrDefault = firstPos.getOrDefault(nums[i], -1);
            if (firstPosOrDefault == -1) {
                firstPos.put(nums[i], i);
            } else {
                distance = i - firstPosOrDefault;
            }
        }
        System.out.println(distance);
    }
}
